package com.study.mybatisplus.entity;

import com.baomidou.mybatisplus.annotation.TableName;
import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableId;
import java.time.LocalDateTime;
import java.io.Serializable;

/**
 * <p>
 * 推送记录
 * </p>
 *
 * @author flwu
 * @since 2020-03-20
 */
@TableName("tbl_push")
public class Push implements Serializable {

    private static final long serialVersionUID = 1L;

    @TableId(value = "id", type = IdType.AUTO)
    private Long id;

    /**
     * 发送平台
     */
    private String platform;

    /**
     * 推送类型[1：通知；2：静默消息]
     */
    private Boolean category;

    /**
     * 额外参数
     */
    private String param;

    /**
     * 内容
     */
    private String content;

    /**
     * 消息状态[1：未发送；2：发送中；3：发送成功；4：发送失败]
     */
    private Boolean status;

    /**
     * 操作人昵称
     */
    private String operator;

    /**
     * 操作人ID，0表示系统
     */
    private Long operatorId;

    /**
     * 发送时间
     */
    private LocalDateTime sendDatetime;

    /**
     * 第三方响应码
     */
    private String responseCode;

    /**
     * 第三方响应消息
     */
    private String responseMessage;

    /**
     * 创建时间
     */
    private LocalDateTime createDatetime;

    /**
     * 最后更新时间
     */
    private LocalDateTime updateDatetime;

    public Long getId() {
        return id;
    }

    public void setId(Long id) {
        this.id = id;
    }
    public String getPlatform() {
        return platform;
    }

    public void setPlatform(String platform) {
        this.platform = platform;
    }
    public Boolean getCategory() {
        return category;
    }

    public void setCategory(Boolean category) {
        this.category = category;
    }
    public String getParam() {
        return param;
    }

    public void setParam(String param) {
        this.param = param;
    }
    public String getContent() {
        return content;
    }

    public void setContent(String content) {
        this.content = content;
    }
    public Boolean getStatus() {
        return status;
    }

    public void setStatus(Boolean status) {
        this.status = status;
    }
    public String getOperator() {
        return operator;
    }

    public void setOperator(String operator) {
        this.operator = operator;
    }
    public Long getOperatorId() {
        return operatorId;
    }

    public void setOperatorId(Long operatorId) {
        this.operatorId = operatorId;
    }
    public LocalDateTime getSendDatetime() {
        return sendDatetime;
    }

    public void setSendDatetime(LocalDateTime sendDatetime) {
        this.sendDatetime = sendDatetime;
    }
    public String getResponseCode() {
        return responseCode;
    }

    public void setResponseCode(String responseCode) {
        this.responseCode = responseCode;
    }
    public String getResponseMessage() {
        return responseMessage;
    }

    public void setResponseMessage(String responseMessage) {
        this.responseMessage = responseMessage;
    }
    public LocalDateTime getCreateDatetime() {
        return createDatetime;
    }

    public void setCreateDatetime(LocalDateTime createDatetime) {
        this.createDatetime = createDatetime;
    }
    public LocalDateTime getUpdateDatetime() {
        return updateDatetime;
    }

    public void setUpdateDatetime(LocalDateTime updateDatetime) {
        this.updateDatetime = updateDatetime;
    }

    @Override
    public String toString() {
        return "Push{" +
            "id=" + id +
            ", platform=" + platform +
            ", category=" + category +
            ", param=" + param +
            ", content=" + content +
            ", status=" + status +
            ", operator=" + operator +
            ", operatorId=" + operatorId +
            ", sendDatetime=" + sendDatetime +
            ", responseCode=" + responseCode +
            ", responseMessage=" + responseMessage +
            ", createDatetime=" + createDatetime +
            ", updateDatetime=" + updateDatetime +
        "}";
    }
}
